Matthias Clasen [Thu, 1 Apr 2021 22:36:23 +0000 (18:36 -0400)]
button: Add back visual feedback for keynav
We lost the visual feedback for activating a button
via Space or Enter when the :active pseudo-state became
managed. Bring it back with a style class.
Fixes: #3813
Matthias Clasen [Thu, 1 Apr 2021 20:01:06 +0000 (20:01 +0000)]
Merge branch 'us-intl-compose' into 'master'
Revert Compose sequence changes
Closes #3807
See merge request GNOME/gtk!3386
Matthias Clasen [Thu, 1 Apr 2021 19:18:20 +0000 (15:18 -0400)]
Add more compose tests
Test the sequences whose demise made people
unhappy.
Matthias Clasen [Thu, 1 Apr 2021 19:15:47 +0000 (15:15 -0400)]
Revert Compose sequence changes
This was breaking muscle memory of people with
the us intl keyboard layout, for important keys
such as '. The unfortunate side-effect is that
our handling of <dead_acute> is a bit hampered
by sequences that don't fit the pattern. But
such is life.
Fixes: #3807
Emmanuele Bassi [Thu, 1 Apr 2021 18:49:38 +0000 (18:49 +0000)]
Merge branch 'builder-tag' into 'master'
docs: Escape tags in GtkBuilder description
See merge request GNOME/gtk!3385
Chris Mayo [Thu, 1 Apr 2021 18:21:57 +0000 (19:21 +0100)]
docs: Escape tags in GtkBuilder description
Fixes the tags and the rest of the gi-docgen created HTML page not being
visible in a browser.
Benjamin Otte [Thu, 1 Apr 2021 15:10:50 +0000 (15:10 +0000)]
Merge branch 'wip/otte/for-master' into 'master'
snapshot: scale border widths when appending border nodes
Closes #3819
See merge request GNOME/gtk!3384
Benjamin Otte [Thu, 1 Apr 2021 14:37:47 +0000 (16:37 +0200)]
snapshot: Move sanity checks to a better place
Fixes cases where the sanity checks would reject valid code, like when
using GL shaders on a scaled transform.
Fixes #3819
Benjamin Otte [Thu, 1 Apr 2021 14:20:32 +0000 (16:20 +0200)]
snapshot: scale border widths when appending border nodes
Found by Matthias on IRC while arguing about GtkSnapshot being too
complicated.
Matthias Clasen [Thu, 1 Apr 2021 14:25:08 +0000 (14:25 +0000)]
Merge branch 'filechooser-signal-disconnect' into 'master'
filechooserwidget: Disconnect settings signal on dispose
See merge request GNOME/gtk!3383
Carlos Garnacho [Thu, 1 Apr 2021 12:11:15 +0000 (12:11 +0000)]
Merge branch 'wip/exalm/overshoot-changes' into 'master'
scrolledwindow: Cancel overshoot on dimension changes
Closes #3752
See merge request GNOME/gtk!3300
Alexander Mikhaylenko [Mon, 15 Mar 2021 12:17:01 +0000 (17:17 +0500)]
scrolledwindow: Cancel overshoot on dimension changes
If we scroll down in a list that's still being filled, we hit the edge and
initiate overshoot, and then the adjustment's upper value increases. This
leads to an unwanted bounce back.
Additionally, if in a similar situation the upper value decreases, the
overscroll glow gets stuck.
Update kinetic scrolling upper and lower value on changes, and immediately
cancel it if dimensions on that side change.
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/3752
Rafał Dzięgiel [Thu, 1 Apr 2021 07:36:19 +0000 (09:36 +0200)]
filechooserwidget: Reduce code duplication for disconnecting settings signal
Instead of getting current display before calling settings signal removal,
do it inside remove function and only if there is a signal connection to remove.
Rafał Dzięgiel [Thu, 1 Apr 2021 07:27:06 +0000 (09:27 +0200)]
filechooserwidget: Disconnect settings signal on dispose
Settings signal was not being disconnected on dispose causing
application crash when user changed icon theme after dialog disposal.
Matthias Clasen [Wed, 31 Mar 2021 21:42:59 +0000 (21:42 +0000)]
Merge branch 'ebassi/broadway-docs' into 'master'
docs: Update the Broadway instructions
See merge request GNOME/gtk!3380
Matthias Clasen [Wed, 31 Mar 2021 21:42:49 +0000 (21:42 +0000)]
Merge branch 'ebassi/docs-links' into 'master'
docs: Update the links to the docs of GTK dependencies
Closes #3817
See merge request GNOME/gtk!3381
Matthias Clasen [Wed, 31 Mar 2021 21:27:18 +0000 (21:27 +0000)]
Merge branch 'offscreen-fixes' into 'master'
Offscreen fixes
See merge request GNOME/gtk!3379
Matthias Clasen [Wed, 31 Mar 2021 11:49:58 +0000 (07:49 -0400)]
gsk: Add another test
Compare clipped repeat nodes. Must skip cairo here
since it blurred the child by scaling after rendering.
Also skip the gl renderer, since it hasn't been fixed
for this yet. ngl passes this test.
Emmanuele Bassi [Wed, 31 Mar 2021 19:51:27 +0000 (20:51 +0100)]
docs: Update the links to the docs of GTK dependencies
Use docs.gtk.org where appropriate.
Fixes: #3817
Emmanuele Bassi [Wed, 31 Mar 2021 19:06:54 +0000 (20:06 +0100)]
docs: Update the Broadway instructions
The Broadway server binary is now versioned, and it's not compatible
with the GTK3 server.
Matthias Clasen [Wed, 31 Mar 2021 11:49:14 +0000 (07:49 -0400)]
testsuite: Rename next to ngl
Use specific names for renderers in the gsk tests.
Otherwise the tests may use the wrong renderer, or
the same renderer twice.
Matthias Clasen [Wed, 31 Mar 2021 18:36:24 +0000 (14:36 -0400)]
ngl: Fix offscreen rendering with transforms
There was confusion here about the handling of the
modelview transform. The modelview transform we are
getting is already set up for rendering the node
we are given, so keep it - except for possible adding
an extra scale on top when the texture would otherwise
be too big.
Matthias Clasen [Wed, 31 Mar 2021 18:34:16 +0000 (14:34 -0400)]
ngl: Be explicit about offscreen clipping
Explicitly set all the input arguments.
This makes it clearer what is going on.
Matthias Clasen [Wed, 31 Mar 2021 18:32:47 +0000 (14:32 -0400)]
ngl: Add sonme comments
The GskNglRenderOffscreen struct is a mix of in and
out arguments. Better annotate that a little bit.
Matthias Clasen [Wed, 31 Mar 2021 11:34:56 +0000 (11:34 +0000)]
Merge branch 'ebassi/for-master' into 'master'
Update the gi-docgen repository
See merge request GNOME/gtk!3352
Benjamin Otte [Tue, 30 Mar 2021 21:54:57 +0000 (21:54 +0000)]
Merge branch 'wip/otte/for-master' into 'master'
gstmedia: Properly detect stream metadata when preparing
See merge request GNOME/gtk!3377
Emmanuele Bassi [Tue, 30 Mar 2021 20:44:51 +0000 (20:44 +0000)]
Merge branch 'ebassi/docs-ci' into 'master'
ci: Add missing graphviz dependency
See merge request GNOME/gtk!3376
Benjamin Otte [Tue, 30 Mar 2021 20:23:32 +0000 (22:23 +0200)]
gstmedia: Properly detect stream metadata when preparing
We can look at the GstPlayerMediaInfo to get all the info we care about.
Emmanuele Bassi [Tue, 30 Mar 2021 20:08:43 +0000 (21:08 +0100)]
ci: Add missing graphviz dependency
We generate the hierarchy graph for GTK types, and in order to do so, we
need the dot utility from graphviz in the CI image.
Anders Jonsson [Tue, 30 Mar 2021 17:13:11 +0000 (17:13 +0000)]
Update Swedish translation
Matthias Clasen [Tue, 30 Mar 2021 16:09:34 +0000 (16:09 +0000)]
Merge branch 'docs' into 'master'
docs: Cover corner-case of @line_number = total lines in buffer
See merge request GNOME/gtk!3373
Matthias Clasen [Tue, 30 Mar 2021 11:19:15 +0000 (07:19 -0400)]
4.2.0
Matthias Clasen [Tue, 30 Mar 2021 12:48:29 +0000 (08:48 -0400)]
Actually build docs for releases
Matthias Clasen [Tue, 30 Mar 2021 12:19:10 +0000 (08:19 -0400)]
Disable the border-image-url reftest
It seems to make assumptions about text positioning that
are not holding with subpixel positioning. I'm not 100%
sure how that leads to exactly the artifacts that are seen
here, but I am just disabling the test until that is fully
understood.
Matthias Clasen [Tue, 30 Mar 2021 12:01:55 +0000 (08:01 -0400)]
Disable flaky focus tests
Matthias Clasen [Tue, 30 Mar 2021 11:42:18 +0000 (07:42 -0400)]
Disable the label-background reftest
It makes assumptions about text positioning that are
not holding with subpixel positioning. There is no
guarantee that the next word in a multi-word text
starts on an even pixel boundary, as it does when
you break the text into multiple, separately rendered
blocks.
Matthias Clasen [Tue, 30 Mar 2021 11:32:59 +0000 (07:32 -0400)]
Fix tests for new version
Matthias Clasen [Tue, 30 Mar 2021 14:58:53 +0000 (14:58 +0000)]
Merge branch 'ebassi/dist-docs' into 'master'
build: Dist the API references
See merge request GNOME/gtk!3375
Emmanuele Bassi [Tue, 30 Mar 2021 14:42:40 +0000 (15:42 +0100)]
build: Dist the API references
Copy them into the dist root from the build root, so that they will be
available in the release archive.
Jonas Ådahl [Tue, 30 Mar 2021 14:06:33 +0000 (14:06 +0000)]
Merge branch 'issue3791-gtk4' into 'master'
gdk/wayland: Defer processing of globals closures
Closes #3791
See merge request GNOME/gtk!3374
Robert Mader [Sat, 27 Mar 2021 14:48:00 +0000 (15:48 +0100)]
gdk/wayland: Defer processing of globals closures
... until all globals have been received.
The dependency tracking introduced in
4e9be39518 only allows to
specify required globals and processes the closures as soon as
the requirements have been met. There are, however, also optional
dependencies - most notably the primary_selection protocol.
Currently we rely on the fact that compositors like Mutter announce
it before `wl_seat`, even though the order is not specified in
the spec.
Process globals closures only after all globals have been announced,
so optional dependencies can be accommodated.
Closes https://gitlab.gnome.org/GNOME/gtk/-/issues/3791
Avinash Sonawane [Tue, 30 Mar 2021 11:17:33 +0000 (16:47 +0530)]
docs: Cover corner-case of @line_number = total lines in buffer
Matthias Clasen [Tue, 30 Mar 2021 11:15:13 +0000 (11:15 +0000)]
Merge branch 'ngl-text-tweaks' into 'master'
Ngl text tweaks
See merge request GNOME/gtk!3367
Matthias Clasen [Mon, 29 Mar 2021 00:53:46 +0000 (20:53 -0400)]
ngl: Avoid a goto
Reshuffle the code slightly, so we can use a continue
instead.
Matthias Clasen [Mon, 29 Mar 2021 00:22:24 +0000 (20:22 -0400)]
gsk: Avoid empty glyphs early
Strip out PANGO_GLYPH_EMPTY when text nodes are
constructed. Then we don't have to check this special
case in the inner loop in visit_text_node.
Matthias Clasen [Mon, 29 Mar 2021 00:20:50 +0000 (20:20 -0400)]
ngl: Speed up glyph loop
Move some work out of the loop in visit_text_node.
This takes advantage of the fact that the yoffset
of most glyphs is zero, so yphase generally does
not change in a line of text.
Matthias Clasen [Mon, 29 Mar 2021 01:13:23 +0000 (21:13 -0400)]
ngl: We only need two bits for phases
We use 4 phases, so 2 bits are enough.
Matthias Clasen [Tue, 30 Mar 2021 03:34:36 +0000 (23:34 -0400)]
Updates
Matthias Clasen [Tue, 30 Mar 2021 04:16:00 +0000 (04:16 +0000)]
Merge branch 'ngl-trivia' into 'master'
Ngl trivia
See merge request GNOME/gtk!3372
Matthias Clasen [Tue, 30 Mar 2021 03:54:13 +0000 (03:54 +0000)]
Merge branch 'video-player-images' into 'master'
gtk-demo: Allow opening images in video player
See merge request GNOME/gtk!3371
Matthias Clasen [Tue, 30 Mar 2021 03:39:25 +0000 (23:39 -0400)]
gtk-demo: Allow opening images in video player
It works, so why not.
Matthias Clasen [Sun, 28 Mar 2021 20:41:59 +0000 (16:41 -0400)]
ngl: Cosmetics
Remove a local variable in gsk_render_job_visit_text_node.
Matthias Clasen [Sun, 28 Mar 2021 20:41:25 +0000 (16:41 -0400)]
ngl: Improve packing
Pack texture cache entries slightly better.
There was a 4 byte hole here.
Matthias Clasen [Sun, 28 Mar 2021 17:27:28 +0000 (13:27 -0400)]
gsk: Typo fix
Matthias Clasen [Sun, 28 Mar 2021 17:27:09 +0000 (13:27 -0400)]
ngl: Typo fix
Matthias Clasen [Mon, 29 Mar 2021 15:52:51 +0000 (15:52 +0000)]
Merge branch 'frame-rate-benchmark' into 'master'
Add a frame benchmark
See merge request GNOME/gtk!3364
Benjamin Otte [Mon, 29 Mar 2021 15:41:55 +0000 (15:41 +0000)]
Merge branch 'wip/otte/for-master' into 'master'
Wip/otte/for master
Closes #3810
See merge request GNOME/gtk!3366
Benjamin Otte [Mon, 29 Mar 2021 13:02:22 +0000 (15:02 +0200)]
mediastream: Insist streams are prepared when they start playing
Applications expect that behavior, so don't let implementations get away
without preparing the stream.
Benjamin Otte [Mon, 29 Mar 2021 15:03:33 +0000 (17:03 +0200)]
gstmedia: Ensure we prepare files without duration
In particular this fixes playback of images.
Fixes #3810
Matthias Clasen [Mon, 29 Mar 2021 12:26:17 +0000 (08:26 -0400)]
Add a frame benchmark
This can be used to gauge what fps we can hope for
in the best case, on a given system.
Yosef Or Boczko [Sun, 28 Mar 2021 22:34:28 +0000 (22:34 +0000)]
Update Hebrew translation
(cherry picked from commit
1beb55083050c975e89f90aa33bd0736581361fc)
Yosef Or Boczko [Sun, 28 Mar 2021 21:31:15 +0000 (21:31 +0000)]
Update Hebrew translation
(cherry picked from commit
4a7e08bb8e4520671393f001197ec77c135a6bb2)
Matthias Clasen [Sun, 28 Mar 2021 17:25:36 +0000 (17:25 +0000)]
Merge branch 'text-node-tweak' into 'master'
textview: Tweak render nodes
See merge request GNOME/gtk!3362
Matthias Clasen [Sun, 28 Mar 2021 17:24:23 +0000 (17:24 +0000)]
Merge branch 'smarter-diff' into 'master'
Smarter diff
See merge request GNOME/gtk!3361
Hugo Carvalho [Sun, 28 Mar 2021 16:35:32 +0000 (16:35 +0000)]
Update Portuguese translation
(cherry picked from commit
ef7cbad45d4f439f5354b0c5df8b12afea179c79)
Matthias Clasen [Sun, 28 Mar 2021 14:59:55 +0000 (10:59 -0400)]
textview: Tweak render nodes
Arrange for the contents to be in a single transform
node that is updated as we scroll. This makes the job
of the render node differ a lot easier, since it does
not have to compare to big containers one-by-one.
Matthias Clasen [Sun, 28 Mar 2021 14:21:18 +0000 (10:21 -0400)]
Add some tests for node diffing
Nothing deep yet, but more can be added.
Matthias Clasen [Sun, 28 Mar 2021 14:18:23 +0000 (10:18 -0400)]
gsk: Make rendernode diffing smarter
Allow comparing container nodes to any other
node, by pretending the other node is a single
child container (if it isn't one already).
This fixes a glitch where we redraw the full
entry text when the blinking cursor goes to
opacity 0, since GskSnapshot then optimizes
away first the opacity node, and then the
single-child container.
Matthias Clasen [Sun, 28 Mar 2021 13:28:40 +0000 (09:28 -0400)]
gsk: Use floorf for floats
Matthias Clasen [Sun, 28 Mar 2021 03:50:36 +0000 (23:50 -0400)]
gsk: Cosmetics
Matthias Clasen [Sun, 28 Mar 2021 14:20:20 +0000 (10:20 -0400)]
ngl: Cosmetics
Remove a commented out line that snuck in with
a recent commit.
Matthias Clasen [Sun, 28 Mar 2021 14:23:35 +0000 (14:23 +0000)]
Merge branch 'fix-memleaks' into 'master'
Fix memleaks
See merge request GNOME/gtk!3360
Matthias Clasen [Sun, 28 Mar 2021 01:52:49 +0000 (21:52 -0400)]
Plug a test memleak
Matthias Clasen [Sun, 28 Mar 2021 01:44:19 +0000 (21:44 -0400)]
Plug a memory leak in an error path
Matthias Clasen [Sun, 28 Mar 2021 01:43:59 +0000 (21:43 -0400)]
Ignore pthread allocations in valgrind
Matthias Clasen [Sun, 28 Mar 2021 01:13:25 +0000 (21:13 -0400)]
tests: Plug a memory leak
Matthias Clasen [Sun, 28 Mar 2021 00:44:18 +0000 (20:44 -0400)]
tests: Make the pixbuf test use TAP
Otherwise, meson just considers this test skipped.
Matthias Clasen [Sun, 28 Mar 2021 00:20:49 +0000 (20:20 -0400)]
asan: Ignore leaks from librsvg
Turns out that there are some leaks from librsvg.
Matthias Clasen [Sat, 27 Mar 2021 23:56:36 +0000 (19:56 -0400)]
tests: Plug memory leaks
This one was pointed out by asan.
Matthias Clasen [Sat, 27 Mar 2021 23:47:05 +0000 (23:47 +0000)]
Merge branch 'fix-memleaks' into 'master'
Fix memleaks
See merge request GNOME/gtk!3359
Matthias Clasen [Sat, 27 Mar 2021 23:11:25 +0000 (19:11 -0400)]
notebook: Don't leak the pages property
We were misuing a transfer-full getter here.
Matthias Clasen [Sat, 27 Mar 2021 23:10:53 +0000 (19:10 -0400)]
stack: Don't leak the pages property
We were misusing a transfer-full getter here.
Matthias Clasen [Sat, 27 Mar 2021 22:40:12 +0000 (18:40 -0400)]
builder: Plug a small memory leak
We were forgetting to free expression info
objects in one place.
Matthias Clasen [Sat, 27 Mar 2021 22:39:37 +0000 (18:39 -0400)]
builder: Add an assertion
This case is clearly not meant to happen.
Assert that it doesn't.
Matthias Clasen [Sat, 27 Mar 2021 21:06:14 +0000 (17:06 -0400)]
settings: Plug a memory leak
It is rare that settings are finalized, but we
still shouldn't leak in that case.
Matthias Clasen [Sat, 27 Mar 2021 21:01:10 +0000 (17:01 -0400)]
Plug a small memory leak
Matthias Clasen [Sat, 27 Mar 2021 20:48:30 +0000 (16:48 -0400)]
bookmarklist: Avoid an invalid read
This shows up when running the objects-finalize
test under valgrind.
Matthias Clasen [Sat, 27 Mar 2021 20:59:54 +0000 (20:59 +0000)]
Merge branch 'ngl-uninitialized-matrix' into 'master'
Ngl uninitialized matrix
See merge request GNOME/gtk!3358
Anders Jonsson [Sat, 27 Mar 2021 20:43:11 +0000 (20:43 +0000)]
Update Swedish translation
(cherry picked from commit
86f3c11d1ea5e15e7ca9c263d52b2f5fdbfa4a18)
Matthias Clasen [Sat, 27 Mar 2021 20:23:40 +0000 (16:23 -0400)]
ngl: Fix an uninitialized read
We were using the wrong matrix here.
valgrind pointed this point.
Matthias Clasen [Sat, 27 Mar 2021 20:23:17 +0000 (16:23 -0400)]
reftests: Plug a few memory leaks
Noticed in passing.
Matthias Clasen [Sat, 27 Mar 2021 20:23:40 +0000 (16:23 -0400)]
ngl: Fix an uninitialized read
We were using the wrong matrix here.
valgrind pointed this point.
Matthias Clasen [Sat, 27 Mar 2021 20:23:17 +0000 (16:23 -0400)]
reftests: Plug a few memory leaks
Noticed in passing.
Matthias Clasen [Sat, 27 Mar 2021 18:22:19 +0000 (14:22 -0400)]
release: Actually include docs
Matthias Clasen [Thu, 25 Mar 2021 11:44:51 +0000 (07:44 -0400)]
Updates
Matthias Clasen [Sat, 27 Mar 2021 14:23:15 +0000 (14:23 +0000)]
Merge branch 'file-chooser-fixes' into 'master'
File chooser fixes
See merge request GNOME/gtk!3356
Matthias Clasen [Sat, 27 Mar 2021 13:57:00 +0000 (09:57 -0400)]
filechooser: Make / work as shortcut again
Typing / is meant to open the location entry, so
prevent search from capturing that key.
Matthias Clasen [Sat, 27 Mar 2021 13:54:20 +0000 (09:54 -0400)]
filechooser: Fix fallout from GtkText
Ever since the GtkText split, the focus is no longer
on an entry, but inside it. The filechooser was never
updated for that.
Matthias Clasen [Sat, 27 Mar 2021 13:53:43 +0000 (09:53 -0400)]
filechooser: Make Ctrl-L work again
Prevent search from preempting the Ctrl-L shortcut
that is meant to show the location entry.
Matthias Clasen [Sat, 27 Mar 2021 12:59:21 +0000 (08:59 -0400)]
layout: Be quiet about trivialities
Commit
8b82993dde5bea985d added a noisy warning
to gtk_distribute_natural_allocation to quiet a
compiler warning. It turn out that the file chooser
managed to trigger this warning, so make it a quiet
return.